package com.wudimeng.syll.utils.uuid;

/**
 * ID生成器工具类
 * 
 * @author ruoyi
 */
public class IdUtils
{
    /**
     * 获取随机UUID
     * 
     * @return 随机UUID
     */
    public static String randomUUID()
    {
        return UUID.randomUUID().toString();
    }

    /**
     * 简化的UUID，去掉了横线
     * 
     * @return 简化的UUID，去掉了横线
     */
    public static String simpleUUID()
    {
        return UUID.randomUUID().toString(true);
    }

    /**
     * 获取随机UUID，使用性能更好的ThreadLocalRandom生成UUID
     * 
     * @return 随机UUID
     */
    public static String fastUUID()
    {
        return UUID.fastUUID().toString();
    }

    /**
     * 简化的UUID，去掉了横线，使用性能更好的ThreadLocalRandom生成UUID
     * 
     * @return 简化的UUID，去掉了横线
     */
    public static String fastSimpleUUID()
    {
        return UUID.fastUUID().toString(true);
    }


    public static String datacenterId = "1";
    public static String machineId = "2";

    //产生雪花ID
    public static String selectSnowID() {
        try{
            Thread.sleep(100);
        }catch (Exception e){
            e.printStackTrace();
        }
        SnowFlake snowFlake = new SnowFlake(Long.valueOf(datacenterId), Long.valueOf(machineId));
        return String.valueOf(snowFlake.nextId());
    }
}
